//
//  LineTwoTypesStyle.hpp
//  fingeradvanture
//
//  Created by shuaibincheng on 16/5/18.
//
//

#ifndef LineTwoTypesStyle_hpp
#define LineTwoTypesStyle_hpp

#include "MonsterDen.hpp"
#include "TroopStyle.hpp"

class LineTwoTypesStyle : public TroopStyle
{
private:
    MonsterType even; //偶数位使用的monster类型
    MonsterType odd; //奇数位使用的monster类型
    
public:
    LineTwoTypesStyle(int num) : TroopStyle(num)
    {
        even = MONSTER_UNKNOWN;
        odd = MONSTER_UNKNOWN;
    }
protected:
    virtual MonsterType next();
    
private:
    std::vector<MonsterType> evenAllowedMonsterType();  //偶数位中允许出现的monster类型
    std::vector<MonsterType> oddAllowedMonsterType();  //奇数位中允许出现的moster类型
};

#endif /* LineTwoTypesStyle_hpp */
